solrCloud的初體驗

正文

傻瓜操作,都是在UI上面執行。
但solr都是使用api的方式做動作。
所以下面的操作改成api是也可行的。

基本篇

  1. 新增資料
    39-fig.1.jpg
  2. 查詢資料
    39-fig.2.jpg
    基本的查詢方式,
    如果要查筆數的話,將rows 改成 0 ,就會列出所有筆數。
    但不會顯示任何資料。
  3. 刪除所有資料
    如果要刪除單筆,只要修改條件即可
    : 改成要搜尋的條件,
    (e.g. videoId: 28748)
    39-fig.3.jpg
	<delete><query>*:*</query></delete>  
	<commit/>

ref.
solr刪除資料的四種方法
Solr官方文檔

進階篇

  1. 查詢指令
    39-fig.4.jpg
    ref.
    Solr 查詢參數
    solr搜尋詳解
    Solr查詢界面

  2. 查看collection的架構

	http http://<host>:<port>/solr/<collectionName>/schema/fields

ref. Schema API

  1. 搜尋中文字,欄位結構 text_general vs string

一般我們搜尋中文要額外安裝中文分詞,這樣搜尋關鍵字的時候,才會正確。
沒裝的話,會有下面的情況。
例如,搜尋 『中文』 ,但這樣會將欄位裡面除了有『中文』的資料撈出來以外,還會將資料中有『中』的字取出。

但後來同事有發現另一種解法,建立結構的時候,不能選擇 text_general,必須要選 string。

如果使用string的話,要注意的是只接受完整的文字搜尋。也就是一串文字中,搜尋的關鍵字要完全符合才會顯示。

而text_general,可接受部分的文字搜尋,但缺點就是搜尋中文時,會有上面的狀況。

結構使用string的話,如果改使用

	*中文*

這種搜尋方式,就只會搜尋資料中有『中文』關鍵字的資料,字串不會被拆開查詢。

本來是要使用中文分詞,但後來也不用了。

  1. solr的外掛套件

本來官方是提供blob store API安裝套件
但在 solrCloud 8.4 ,有多出了一個功能 package managr
可使用簡單且快速的方式安裝plugin。

但因為上面的第三點,所以也不用研究這塊了。
留下一些參考網址,留着以後查詢。

初步看都是在solr 啟動時要加一個指令

-Denable.packages=true

這個應該是在yaml佈署的時候,就要加上去了。
yaml佈署時,為容器設置啟動時要執行的命令和參數

也有在猜測,未來應該是可以直接使用 solr operator安裝的時候一並設定,但目前參數沒有看到,看未來會不會新增。Solr Operator

ref.